package com.raindrop.rd.parser;

import com.raindrop.rd.parser.ast.Block;
import com.raindrop.rd.parser.token.TokenStream;
import com.raindrop.rd.parser.token.Tokenizer;

import java.util.ArrayList;
import java.util.List;

/**
 * 解析器，讲源码变为可执行代码块{@link com.raindrop.rd.parser.ast.Block}
 *
 * @author BillDowney
 * @date 2021/3/23 16:03
 */
public class Parser {

    /**
     * 解析源码变为可执行的代码块
     *
     * @param source 源码内容
     * @return 可执行的代码块
     */
    public List<Block> parse(String source) {
        List<Block> blocks = new ArrayList<>();

        TokenStream tokenStream = Tokenizer.parsing(source);
        return blocks;
    }

}
